/*
 *代码由框架生成,任何更改都可能导致被代码生成器覆盖
 *如果数据库字段发生变化，请在代码生器重新生成此Model
 */
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using VolPro.Entity.SystemModels;

namespace VolPro.Entity.DomainModels
{
    [Entity(TableCnName = "装机表", TableName = "MES_SaveAssembly", DBServer = "ServiceDbContext")]
    public partial class SaveAssembly : ServiceEntity
    {
        /// <summary>
       ///ID
       /// </summary>
       [Key]
       [Display(Name ="ID")]
       [MaxLength(36)]
       [Column(TypeName="uniqueidentifier")]
       [Editable(true)]
       [Required(AllowEmptyStrings=false)]
       public Guid DomDetailId { get; set; }

        /////////////////////////////////////////////////////////////////////////////
        /// <summary>
        ///零部件条码
        /// </summary>
        [Display(Name = "零部件条码")]
        [MaxLength(200)]
        [Column(TypeName = "nvarchar(200)")]
        [Editable(true)]
        public string Barcode { get; set; }

        /// <summary>
        ///收藏编号-空值
        /// </summary>
        [Display(Name = "收藏编号")]
        [MaxLength(200)]
        [Column(TypeName = "nvarchar(200)")]
        [Editable(true)]
        public string CollectionNo { get; set; }

        ///////////// <summary>
        /////////////采集类型--
        ///////////// </summary>
        //////////[Display(Name = "采集类型")]
        //////////[MaxLength(200)]
        //////////[Column(TypeName = "nvarchar(50)")]
        //////////[Editable(true)]
        //////////public int CollectionType { get; set; }

        /// <summary>
        ///采集类型 ---1自动设备 2手动扫描 3三方系统上传（框架中引用源试试此字段能不能是int类型，不好用就该字符串）
        /// </summary>
        [Display(Name = "采集类型")]
        [Column(TypeName = "int")]
        [Editable(true)]
        public int? CollectionType { get; set; }

        /// <summary>
        ///备用1编号-空值
        /// </summary>
        [Display(Name = "备用1编号")]
        [MaxLength(200)]
        [Column(TypeName = "nvarchar(200)")]
        [Editable(true)]
        public string CompagesPartBarcode { get; set; }

        /// <summary>
        ///标志-空值
        /// </summary>
        [Display(Name = "标志空值")]
        [MaxLength(200)]
        [Column(TypeName = "nvarchar(50)")]
        [Editable(true)]
        public string Flag { get; set; }

        /// <summary>
        ///现场扫描流水号ID
        /// </summary>
        [Display(Name = "现场扫描流水号ID")]
        [Column(TypeName = "long")]
        [Editable(true)]
        [Required(AllowEmptyStrings = false)]
        public long FlowId { get; set; }

        /// <summary>
        ///是否已倒冲 ---1是 2否（框架中引用源试试此字段能不能是int类型，不好用就该字符串）
        /// </summary>
        [Display(Name = "采集类型")]
        [Column(TypeName = "int")]
        [Editable(true)]
        public int? IsBackFlush { get; set; }

        /// <summary>
        ///是否包含在错漏扫视图 ---1是 2否（框架中引用源试试此字段能不能是int类型，不好用就该字符串）
        /// </summary>
        [Display(Name = "是否包含在错漏扫视图")]
        [Column(TypeName = "int")]
        [Editable(true)]
        public int? IsInclude { get; set; }

        /// <summary>
        ///订货号ID（来自计划接口的itemId）/////订货号表还没建好 后期这里要修改。。最好实现明细表
        /// </summary>
        [Display(Name = "订货号ID")]
        [MaxLength(200)]
        [Column(TypeName = "nvarchar(50)")]
        [Editable(true)]
        public string ItemId { get; set; }

        /// <summary>
        ///是否关重件 ---1是 2否（框架中引用源试试此字段能不能是int类型，不好用就该字符串）
        /// </summary>
        [Display(Name = "是否关重件")]
        [Column(TypeName = "int")]
        [Editable(true)]
        public int? KeyFlag { get; set; }

        /// <summary>
        ///生产线组织ID
        /// </summary>
        [Display(Name = "生产线组织ID")]
        [Column(TypeName = "int")]
        [Editable(true)]
        public int? LineDeptId { get; set; }

        /// <summary>
        ///生产线ID
        /// </summary>
        [Display(Name = "生产线ID")]
        [Column(TypeName = "int")]
        [Editable(true)]
        public int LineId { get; set; }

        /// <summary>
        ///设备编号
        /// </summary>
        [Display(Name = "设备编号")]
        [MaxLength(50)]
        [Column(TypeName = "nvarchar(50)")]
        [Editable(true)]
        public string EquipmentCode { get; set; }

        /// <summary>
        ///设备ID
        /// </summary>
        [Display(Name = "设备ID")]
        [MaxLength(50)]
        [Column(TypeName = "nvarchar(50)")]
        [Editable(true)]
        public string EquipmentID { get; set; }


        /// <summary>
        ///子件物料编码/件号
        /// </summary>
        [Display(Name = "子件物料编码")]
        [MaxLength(200)]
        [Column(TypeName = "nvarchar(200)")]
        [Editable(true)]
        public string MaterialCode { get; set; }

        /// <summary>
        ///子件物料批次号
        /// </summary>
        [Display(Name = "子件物料批次号")]
        [MaxLength(200)]
        [Column(TypeName = "nvarchar(200)")]
        [Editable(true)]
        public string MaterialBatch { get; set; }

        /// <summary>
        ///子件物料ID 来自bom
        /// </summary>
        [Display(Name = "子件物料ID")]
        [MaxLength(200)]
        [Column(TypeName = "nvarchar(200)")]
        [Editable(true)]
        public string MaterialID { get; set; }


        /// <summary>
        ///产品序列号
        /// </summary>
        [Display(Name = "产品序列号")]
        [MaxLength(200)]
        [Column(TypeName = "nvarchar(200)")]
        [Editable(true)]
        public string ProductSN { get; set; }

        /// <summary>
        ///备注
        /// </summary>
        [Display(Name = "备注")]
        [MaxLength(200)]
        [Column(TypeName = "nvarchar(200)")]
        [Editable(true)]
        public string Remark { get; set; }

        /// <summary>
        ///扫描时间
        /// </summary>
        [Display(Name = "扫描时间")]
        [Column(TypeName = "datetime")]
        [Editable(true)]
        public DateTime ScanDate { get; set; }

        /// <summary>
        ///扫描备注
        /// </summary>
        [Display(Name = "扫描备注")]
        [MaxLength(200)]
        [Column(TypeName = "nvarchar(200)")]
        [Editable(true)]
        public string ScanDescription { get; set; }

        /// <summary>
        ///扫描模式(0:正常安装1:强制安装2:返修安装3:未进行安装4:手工更新5: reserved1 6:reserved2 7:离线安装)")
        /// </summary>
        [Display(Name = "扫描模式")]
        [Column(TypeName = "int")]
        [Editable(true)]
        public int ScanMode { get; set; }

        /// <summary>
        ///采集数量
        /// </summary>
        [Display(Name = "采集数量")]
        [Column(TypeName = "int")]
        [Editable(true)]
        public int ScanNumber { get; set; }

        /// <summary>
        ///供应商编号 ;条码中的供应商编号
        /// </summary>
        [Display(Name = "供应商编号")]
        [MaxLength(50)]
        [Column(TypeName = "nvarchar(50)")]
        [Editable(true)]
        public string SupplierCode { get; set; }

        ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

       /// <summary>
       ///启用状态
       /// </summary>
       [Display(Name ="启用状态")]
       [Column(TypeName="int")]
       [Editable(true)]
       public int? Enable { get; set; }

       /// <summary>
       ///创建人
       /// </summary>
       [Display(Name ="创建人")]
       [Column(TypeName="int")]
       [Editable(true)]
       public int? CreateID { get; set; }

       /// <summary>
       ///创建人
       /// </summary>
       [Display(Name ="创建人")]
       [MaxLength(50)]
       [Column(TypeName="nvarchar(50)")]
       [Editable(true)]
       public string Creator { get; set; }

       /// <summary>
       ///创建时间
       /// </summary>
       [Display(Name ="创建时间")]
       [Column(TypeName="datetime")]
       [Editable(true)]
       public DateTime? CreateDate { get; set; }

       /// <summary>
       ///更新人
       /// </summary>
       [Display(Name ="更新人")]
       [Column(TypeName="int")]
       [Editable(true)]
       public int? ModifyID { get; set; }

       /// <summary>
       ///更新人名称
       /// </summary>
       [Display(Name ="更新人名称")]
       [MaxLength(50)]
       [Column(TypeName="nvarchar(50)")]
       [Editable(true)]
       public string Modifier { get; set; }

       /// <summary>
       ///更新时间
       /// </summary>
       [Display(Name ="更新时间")]
       [Column(TypeName="datetime")]
       [Editable(true)]
       public DateTime? ModifyDate { get; set; }

       
    }
}